﻿using System;

using Rarous.TexyNet.Configuration;
using Rarous.TexyNet.Modules;

using Xunit;

namespace Rarous.TexyNet.Test {

  /// <summary>
  /// This is a test class for ImageDescriptionModuleTest and is intended
  /// to contain all ImageDescriptionModuleTest Unit Tests
  /// </summary>
  public class ImageDescriptionModuleTest {

    /// <summary>
    /// A test for RightClassTest
    /// </summary>
    [Fact]
    public void ImageDescriptionModule_RightClass_PropertyBehavior() {
      ImageDescriptionModule target = new ImageDescriptionModule();
      string expected = "img-right";
      target.RightClass = expected;

      Assert.Equal(expected, target.RightClass);
    }

    /// <summary>
    /// A test for LeftClassTest
    /// </summary>
    [Fact]
    public void ImageDescriptionModule_LeftClass_PropertyBehavior() {
      ImageDescriptionModule target = new ImageDescriptionModule();
      string expected = "img-left";
      target.LeftClass = expected;

      Assert.Equal(expected, target.LeftClass);
    }

    /// <summary>
    /// A test for BoxClassTest
    /// </summary>
    [Fact]
    public void ImageDescriptionModule_BoxClass_PropertyBehavior() {
      ImageDescriptionModule target = new ImageDescriptionModule();
      string expected = "img-box";
      target.BoxClass = expected;

      Assert.Equal(expected, target.BoxClass);
    }

    /// <summary>
    /// A test for ImageDescriptionModuleConstructorTest1
    /// </summary>
    [Fact]
    public void ImageDescriptionModule_Constructor_NullConfigElement() {
      ImageDescriptionModule target = new ImageDescriptionModule(null);

      Assert.Equal(String.Empty, target.BoxClass);
      Assert.Equal("left", target.LeftClass);
      Assert.Equal("right", target.RightClass);
    }

    /// <summary>
    /// A test for ImageDescriptionModuleConstructorTest
    /// </summary>
    [Fact]
    public void ImageDescriptionModule_Constructor_Default() {
      ImageDescriptionModule target = new ImageDescriptionModule();

      Assert.Equal(String.Empty, target.BoxClass);
      Assert.Equal("left", target.LeftClass);
      Assert.Equal("right", target.RightClass);
    }
  }
}
